<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Oyster.IntX</name>
    </assembly>
    <members>
        <member name="T:Oyster.Math.ParseManager">
            <summary>
            Used to retrieve needed parser.
            </summary>
        </member>
        <member name="F:Oyster.Math.ParseManager.ClassicParser">
            <summary>
            Classic parser instance.
            </summary>
        </member>
        <member name="F:Oyster.Math.ParseManager.FastParser">
            <summary>
            Fast parser instance.
            </summary>
        </member>
        <member name="M:Oyster.Math.ParseManager.GetParser(Oyster.Math.ParseMode)">
            <summary>
            Returns parser instance for given parse mode.
            </summary>
            <param name="mode">Parse mode.</param>
            <returns>Parser instance.</returns>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="mode"/> is out of range.</exception>
        </member>
        <member name="M:Oyster.Math.ParseManager.GetCurrentParser">
            <summary>
            Returns current parser instance.
            </summary>
            <returns>Current parser instance.</returns>
        </member>
        <member name="T:Oyster.Math.AutoNewtonDivider">
            <summary>
            Divides using Newton approximation approach.
            </summary>
        </member>
        <member name="T:Oyster.Math.DividerBase">
            <summary>
            Base class for dividers.
            Contains default implementation of divide operation over <see cref="T:Oyster.Math.IntX"/> instances.
            </summary>
        </member>
        <member name="T:Oyster.Math.IDivider">
            <summary>
            Divider class interface.
            </summary>
        </member>
        <member name="M:Oyster.Math.IDivider.DivMod(Oyster.Math.IntX,Oyster.Math.IntX,Oyster.Math.IntX@,Oyster.Math.DivModResultFlags)">
            <summary>
            Divides one <see cref="T:Oyster.Math.IntX"/> by another.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <param name="modRes">Remainder big integer.</param>
            <param name="resultFlags">Which operation results to return.</param>
            <returns>Divident big integer.</returns>
        </member>
        <member name="M:Oyster.Math.IDivider.DivMod(System.UInt32[],System.UInt32[],System.UInt32@,System.UInt32[],System.UInt32[],System.UInt32,System.UInt32[],Oyster.Math.DivModResultFlags,System.Int32)">
            <summary>
            Divides two big integers.
            Also modifies <paramref name="digits1" /> and <paramref name="length1"/> (it will contain remainder).
            </summary>
            <param name="digits1">First big integer digits.</param>
            <param name="digitsBuffer1">Buffer for first big integer digits. May also contain remainder. Can be null - in this case it's created if necessary.</param>
            <param name="length1">First big integer length.</param>
            <param name="digits2">Second big integer digits.</param>
            <param name="digitsBuffer2">Buffer for second big integer digits. Only temporarily used. Can be null - in this case it's created if necessary.</param>
            <param name="length2">Second big integer length.</param>
            <param name="digitsRes">Resulting big integer digits.</param>
            <param name="resultFlags">Which operation results to return.</param>
            <param name="cmpResult">Big integers comparsion result (pass -2 if omitted).</param>
            <returns>Resulting big integer length.</returns>
        </member>
        <member name="M:Oyster.Math.IDivider.DivMod(System.UInt32*,System.UInt32*,System.UInt32@,System.UInt32*,System.UInt32*,System.UInt32,System.UInt32*,Oyster.Math.DivModResultFlags,System.Int32)">
            <summary>
            Divides two big integers.
            Also modifies <paramref name="digitsPtr1" /> and <paramref name="length1"/> (it will contain remainder).
            </summary>
            <param name="digitsPtr1">First big integer digits.</param>
            <param name="digitsBufferPtr1">Buffer for first big integer digits. May also contain remainder.</param>
            <param name="length1">First big integer length.</param>
            <param name="digitsPtr2">Second big integer digits.</param>
            <param name="digitsBufferPtr2">Buffer for second big integer digits. Only temporarily used.</param>
            <param name="length2">Second big integer length.</param>
            <param name="digitsResPtr">Resulting big integer digits.</param>
            <param name="resultFlags">Which operation results to return.</param>
            <param name="cmpResult">Big integers comparsion result (pass -2 if omitted).</param>
            <returns>Resulting big integer length.</returns>
        </member>
        <member name="M:Oyster.Math.DividerBase.DivMod(Oyster.Math.IntX,Oyster.Math.IntX,Oyster.Math.IntX@,Oyster.Math.DivModResultFlags)">
            <summary>
            Divides one <see cref="T:Oyster.Math.IntX"/> by another.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <param name="modRes">Remainder big integer.</param>
            <param name="resultFlags">Which operation results to return.</param>
            <returns>Divident big integer.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="int1"/> or <paramref name="int2"/> is a null reference.</exception>
            <exception cref="T:System.DivideByZeroException"><paramref name="int2"/> equals zero.</exception>
        </member>
        <member name="M:Oyster.Math.DividerBase.DivMod(System.UInt32[],System.UInt32[],System.UInt32@,System.UInt32[],System.UInt32[],System.UInt32,System.UInt32[],Oyster.Math.DivModResultFlags,System.Int32)">
            <summary>
            Divides two big integers.
            Also modifies <paramref name="digits1" /> and <paramref name="length1"/> (it will contain remainder).
            </summary>
            <param name="digits1">First big integer digits.</param>
            <param name="digitsBuffer1">Buffer for first big integer digits. May also contain remainder. Can be null - in this case it's created if necessary.</param>
            <param name="length1">First big integer length.</param>
            <param name="digits2">Second big integer digits.</param>
            <param name="digitsBuffer2">Buffer for second big integer digits. Only temporarily used. Can be null - in this case it's created if necessary.</param>
            <param name="length2">Second big integer length.</param>
            <param name="digitsRes">Resulting big integer digits.</param>
            <param name="resultFlags">Which operation results to return.</param>
            <param name="cmpResult">Big integers comparsion result (pass -2 if omitted).</param>
            <returns>Resulting big integer length.</returns>
        </member>
        <member name="M:Oyster.Math.DividerBase.DivMod(System.UInt32*,System.UInt32*,System.UInt32@,System.UInt32*,System.UInt32*,System.UInt32,System.UInt32*,Oyster.Math.DivModResultFlags,System.Int32)">
            <summary>
            Divides two big integers.
            Also modifies <paramref name="digitsPtr1" /> and <paramref name="length1"/> (it will contain remainder).
            </summary>
            <param name="digitsPtr1">First big integer digits.</param>
            <param name="digitsBufferPtr1">Buffer for first big integer digits. May also contain remainder.</param>
            <param name="length1">First big integer length.</param>
            <param name="digitsPtr2">Second big integer digits.</param>
            <param name="digitsBufferPtr2">Buffer for second big integer digits. Only temporarily used.</param>
            <param name="length2">Second big integer length.</param>
            <param name="digitsResPtr">Resulting big integer digits.</param>
            <param name="resultFlags">Which operation results to return.</param>
            <param name="cmpResult">Big integers comparsion result (pass -2 if omitted).</param>
            <returns>Resulting big integer length.</returns>
        </member>
        <member name="M:Oyster.Math.AutoNewtonDivider.#ctor(Oyster.Math.IDivider)">
            <summary>
            Creates new <see cref="T:Oyster.Math.AutoNewtonDivider"/> instance.
            </summary>
            <param name="classicDivider">Divider to use if Newton approach is unapplicatible.</param>
        </member>
        <member name="M:Oyster.Math.AutoNewtonDivider.IsClassicAlgorithmNeeded(System.UInt32,System.UInt32)">
            <summary>
            Returns true if it's better to use classic algorithm for given big integers.
            </summary>
            <param name="length1">First big integer length.</param>
            <param name="length2">Second big integer length.</param>
            <returns>True if classic algorithm is better.</returns>
        </member>
        <member name="M:Oyster.Math.AutoNewtonDivider.DivMod(System.UInt32[],System.UInt32[],System.UInt32@,System.UInt32[],System.UInt32[],System.UInt32,System.UInt32[],Oyster.Math.DivModResultFlags,System.Int32)">
            <summary>
            Divides two big integers.
            Also modifies <paramref name="digits1" /> and <paramref name="length1"/> (it will contain remainder).
            </summary>
            <param name="digits1">First big integer digits.</param>
            <param name="digitsBuffer1">Buffer for first big integer digits. May also contain remainder. Can be null - in this case it's created if necessary.</param>
            <param name="length1">First big integer length.</param>
            <param name="digits2">Second big integer digits.</param>
            <param name="digitsBuffer2">Buffer for second big integer digits. Only temporarily used. Can be null - in this case it's created if necessary.</param>
            <param name="length2">Second big integer length.</param>
            <param name="digitsRes">Resulting big integer digits.</param>
            <param name="resultFlags">Which operation results to return.</param>
            <param name="cmpResult">Big integers comparsion result (pass -2 if omitted).</param>
            <returns>Resulting big integer length.</returns>
        </member>
        <member name="M:Oyster.Math.AutoNewtonDivider.DivMod(System.UInt32*,System.UInt32*,System.UInt32@,System.UInt32*,System.UInt32*,System.UInt32,System.UInt32*,Oyster.Math.DivModResultFlags,System.Int32)">
            <summary>
            Divides two big integers.
            Also modifies <paramref name="digitsPtr1" /> and <paramref name="length1"/> (it will contain remainder).
            </summary>
            <param name="digitsPtr1">First big integer digits.</param>
            <param name="digitsBufferPtr1">Buffer for first big integer digits. May also contain remainder.</param>
            <param name="length1">First big integer length.</param>
            <param name="digitsPtr2">Second big integer digits.</param>
            <param name="digitsBufferPtr2">Buffer for second big integer digits. Only temporarily used.</param>
            <param name="length2">Second big integer length.</param>
            <param name="digitsResPtr">Resulting big integer digits.</param>
            <param name="resultFlags">Which operation results to return.</param>
            <param name="cmpResult">Big integers comparsion result (pass -2 if omitted).</param>
            <returns>Resulting big integer length.</returns>
        </member>
        <member name="T:Oyster.Math.Strings">
            <summary>
              A strongly-typed resource class, for looking up localized strings, etc.
            </summary>
        </member>
        <member name="P:Oyster.Math.Strings.ResourceManager">
            <summary>
              Returns the cached ResourceManager instance used by this class.
            </summary>
        </member>
        <member name="P:Oyster.Math.Strings.Culture">
            <summary>
              Overrides the current thread's CurrentUICulture property for all
              resource lookups using this strongly typed resource class.
            </summary>
        </member>
        <member name="P:Oyster.Math.Strings.AlphabetRepeatingChars">
            <summary>
              Looks up a localized string similar to Alphabet characters must be unique..
            </summary>
        </member>
        <member name="P:Oyster.Math.Strings.AlphabetTooSmall">
            <summary>
              Looks up a localized string similar to Alphabet is too small to represent numbers in base {0}..
            </summary>
        </member>
        <member name="P:Oyster.Math.Strings.CantBeNull">
            <summary>
              Looks up a localized string similar to Operands can&apos;t be null..
            </summary>
        </member>
        <member name="P:Oyster.Math.Strings.CantBeNullCmp">
            <summary>
              Looks up a localized string similar to Can&apos;t use null in comparsion operations..
            </summary>
        </member>
        <member name="P:Oyster.Math.Strings.CantBeNullOne">
            <summary>
              Looks up a localized string similar to Operand can&apos;t be null..
            </summary>
        </member>
        <member name="P:Oyster.Math.Strings.CantCmp">
            <summary>
              Looks up a localized string similar to Can&apos;t compare with provided argument..
            </summary>
        </member>
        <member name="P:Oyster.Math.Strings.DigitBytesLengthInvalid">
            <summary>
              Looks up a localized string similar to Digit bytes array length is invalid..
            </summary>
        </member>
        <member name="P:Oyster.Math.Strings.FhtMultiplicationError">
            <summary>
              Looks up a localized string similar to FHT multiplication returned invalid result for IntX objects with lengths {0} and {1}..
            </summary>
        </member>
        <member name="P:Oyster.Math.Strings.IntegerTooBig">
            <summary>
              Looks up a localized string similar to One of the operated big integers is too big..
            </summary>
        </member>
        <member name="P:Oyster.Math.Strings.ParseBaseInvalid">
            <summary>
              Looks up a localized string similar to Base is invalid..
            </summary>
        </member>
        <member name="P:Oyster.Math.Strings.ParseInvalidChar">
            <summary>
              Looks up a localized string similar to Invalid character in input..
            </summary>
        </member>
        <member name="P:Oyster.Math.Strings.ParseNoDigits">
            <summary>
              Looks up a localized string similar to No digits in string..
            </summary>
        </member>
        <member name="P:Oyster.Math.Strings.ParseTooBigDigit">
            <summary>
              Looks up a localized string similar to Digit is too big for this base..
            </summary>
        </member>
        <member name="P:Oyster.Math.Strings.ToStringSmallBase">
            <summary>
              Looks up a localized string similar to Base must be between 2 and 65536..
            </summary>
        </member>
        <member name="T:Oyster.Math.DigitOpHelper">
            <summary>
            Contains helping methods for operations over <see cref="T:Oyster.Math.IntX"/> digits as arrays.
            </summary>
        </member>
        <member name="M:Oyster.Math.DigitOpHelper.Add(System.UInt32[],System.UInt32,System.UInt32[],System.UInt32,System.UInt32[])">
            <summary>
            Adds two big integers.
            </summary>
            <param name="digits1">First big integer digits.</param>
            <param name="length1">First big integer length.</param>
            <param name="digits2">Second big integer digits.</param>
            <param name="length2">Second big integer length.</param>
            <param name="digitsRes">Resulting big integer digits.</param>
            <returns>Resulting big integer length.</returns>
        </member>
        <member name="M:Oyster.Math.DigitOpHelper.Add(System.UInt32*,System.UInt32,System.UInt32*,System.UInt32,System.UInt32*)">
            <summary>
            Adds two big integers using pointers.
            </summary>
            <param name="digitsPtr1">First big integer digits.</param>
            <param name="length1">First big integer length.</param>
            <param name="digitsPtr2">Second big integer digits.</param>
            <param name="length2">Second big integer length.</param>
            <param name="digitsResPtr">Resulting big integer digits.</param>
            <returns>Resulting big integer length.</returns>
        </member>
        <member name="M:Oyster.Math.DigitOpHelper.Sub(System.UInt32[],System.UInt32,System.UInt32[],System.UInt32,System.UInt32[])">
            <summary>
            Subtracts two big integers.
            </summary>
            <param name="digits1">First big integer digits.</param>
            <param name="length1">First big integer length.</param>
            <param name="digits2">Second big integer digits.</param>
            <param name="length2">Second big integer length.</param>
            <param name="digitsRes">Resulting big integer digits.</param>
            <returns>Resulting big integer length.</returns>
        </member>
        <member name="M:Oyster.Math.DigitOpHelper.Sub(System.UInt32*,System.UInt32,System.UInt32*,System.UInt32,System.UInt32*)">
            <summary>
            Subtracts two big integers using pointers.
            </summary>
            <param name="digitsPtr1">First big integer digits.</param>
            <param name="length1">First big integer length.</param>
            <param name="digitsPtr2">Second big integer digits.</param>
            <param name="length2">Second big integer length.</param>
            <param name="digitsResPtr">Resulting big integer digits.</param>
            <returns>Resulting big integer length.</returns>
        </member>
        <member name="M:Oyster.Math.DigitOpHelper.DivMod(System.UInt32[],System.UInt32,System.UInt32,System.UInt32[],System.UInt32@)">
            <summary>
            Divides one big integer represented by it's digits on another one big ingeter.
            Reminder is always filled (but not the result).
            </summary>
            <param name="digits1">First big integer digits.</param>
            <param name="length1">First big integer length.</param>
            <param name="int2">Second integer.</param>
            <param name="divRes">Div result (can be null - not filled in this case).</param>
            <param name="modRes">Remainder (always filled).</param>
            <returns>Result length (0 if result is null).</returns>
        </member>
        <member name="M:Oyster.Math.DigitOpHelper.DivMod(System.UInt32*,System.UInt32,System.UInt32,System.UInt32*,System.UInt32@)">
            <summary>
            Divides one big integer represented by it's digits on another one big ingeter.
            Reminder is always filled (but not the result).
            </summary>
            <param name="digitsPtr1">First big integer digits.</param>
            <param name="length1">First big integer length.</param>
            <param name="int2">Second integer.</param>
            <param name="divResPtr">Div result (can be null - not filled in this case).</param>
            <param name="modRes">Remainder (always filled).</param>
            <returns>Result length (0 if result is null).</returns>
        </member>
        <member name="M:Oyster.Math.DigitOpHelper.Mod(System.UInt32[],System.UInt32,System.UInt32)">
            <summary>
            Divides one big integer represented by it's digits on another one big ingeter.
            Only remainder is filled.
            </summary>
            <param name="digits1">First big integer digits.</param>
            <param name="length1">First big integer length.</param>
            <param name="int2">Second integer.</param>
            <returns>Remainder.</returns>
        </member>
        <member name="M:Oyster.Math.DigitOpHelper.Mod(System.UInt32*,System.UInt32,System.UInt32)">
            <summary>
            Divides one big integer represented by it's digits on another one big ingeter.
            Only remainder is filled.
            </summary>
            <param name="digitsPtr1">First big integer digits.</param>
            <param name="length1">First big integer length.</param>
            <param name="int2">Second integer.</param>
            <returns>Remainder.</returns>
        </member>
        <member name="M:Oyster.Math.DigitOpHelper.Cmp(System.UInt32[],System.UInt32,System.UInt32[],System.UInt32)">
            <summary>
            Compares 2 <see cref="T:Oyster.Math.IntX"/> objects represented by digits only (not taking sign into account).
            Returns "-1" if <paramref name="digits1"/> &lt; <paramref name="digits2"/>, "0" if equal and "1" if &gt;.
            </summary>
            <param name="digits1">First big integer digits.</param>
            <param name="length1">First big integer length.</param>
            <param name="digits2">Second big integer digits.</param>
            <param name="length2">Second big integer length.</param>
            <returns>Comparsion result.</returns>
        </member>
        <member name="M:Oyster.Math.DigitOpHelper.Cmp(System.UInt32*,System.UInt32,System.UInt32*,System.UInt32)">
            <summary>
            Compares 2 <see cref="T:Oyster.Math.IntX"/> objects represented by pointers only (not taking sign into account).
            Returns "-1" if <paramref name="digitsPtr1"/> &lt; <paramref name="digitsPtr2"/>, "0" if equal and "1" if &gt;.
            </summary>
            <param name="digitsPtr1">First big integer digits.</param>
            <param name="length1">First big integer length.</param>
            <param name="digitsPtr2">Second big integer digits.</param>
            <param name="length2">Second big integer length.</param>
            <returns>Comparsion result.</returns>
        </member>
        <member name="M:Oyster.Math.DigitOpHelper.CmpLen(System.UInt32,System.UInt32)">
            <summary>
            Compares two integers lengths. Returns -2 if further comparing is needed.
            </summary>
            <param name="length1">First big integer length.</param>
            <param name="length2">Second big integer length.</param>
            <returns>Comparsion result.</returns>
        </member>
        <member name="M:Oyster.Math.DigitOpHelper.Shr(System.UInt32[],System.UInt32,System.UInt32,System.UInt32[],System.UInt32,System.Int32)">
            <summary>
            Shifts big integer.
            </summary>
            <param name="digits">Big integer digits.</param>
            <param name="offset">Big integer digits offset.</param>
            <param name="length">Big integer length.</param>
            <param name="digitsRes">Resulting big integer digits.</param>
            <param name="resOffset">Resulting big integer digits offset.</param>
            <param name="rightShift">Shift to the right (always between 1 an 31).</param>
        </member>
        <member name="M:Oyster.Math.DigitOpHelper.Shr(System.UInt32*,System.UInt32,System.UInt32*,System.Int32,System.Boolean)">
            <summary>
            Shifts big integer.
            </summary>
            <param name="digitsPtr">Big integer digits.</param>
            <param name="length">Big integer length.</param>
            <param name="digitsResPtr">Resulting big integer digits.</param>
            <param name="rightShift">Shift to the right (always between 1 an 31).</param>
            <param name="resHasOffset">True if <paramref name="digitsResPtr" /> has offset.</param>
            <returns>Resulting big integer length.</returns>
        </member>
        <member name="T:Oyster.Math.DigitConverter">
            <summary>
            Converts <see cref="T:Oyster.Math.IntX"/> digits to/from byte array.
            </summary>
        </member>
        <member name="M:Oyster.Math.DigitConverter.ToBytes(System.UInt32[])">
            <summary>
            Converts big integer digits to bytes.
            </summary>
            <param name="digits"><see cref="T:Oyster.Math.IntX"/> digits.</param>
            <returns>Resulting bytes.</returns>
            <remarks>
            Digits can be obtained using <see cref="M:Oyster.Math.IntX.GetInternalState(System.UInt32[]@,System.Boolean@)"/> method.
            </remarks>
        </member>
        <member name="M:Oyster.Math.DigitConverter.FromBytes(System.Byte[])">
            <summary>
            Converts bytes to big integer digits.
            </summary>
            <param name="bytes">Bytes.</param>
            <returns>Resulting <see cref="T:Oyster.Math.IntX"/> digits.</returns>
            <remarks>
            Big integer can be created from digits using <see cref="M:Oyster.Math.IntX.#ctor(System.UInt32[],System.Boolean)"/> constructor.
            </remarks>
        </member>
        <member name="T:Oyster.Math.FastParser">
            <summary>
            Fast parsing algorithm using divide-by-two (O[n*{log n}^2]).
            </summary>
        </member>
        <member name="T:Oyster.Math.ParserBase">
            <summary>
            Base class for parsers.
            Contains default implementations of parse operation over <see cref="T:Oyster.Math.IntX"/> instances.
            </summary>
        </member>
        <member name="T:Oyster.Math.IParser">
            <summary>
            Parser class interface.
            </summary>
        </member>
        <member name="M:Oyster.Math.IParser.Parse(System.String,System.UInt32,System.Collections.Generic.IDictionary{System.Char,System.UInt32},System.Boolean)">
            <summary>
            Parses provided string representation of <see cref="T:Oyster.Math.IntX"/> object.
            </summary>
            <param name="value">Number as string.</param>
            <param name="numberBase">Number base.</param>
            <param name="charToDigits">Char-&gt;digit dictionary.</param>
            <param name="checkFormat">Check actual format of number (0 or 0x at start).</param>
            <returns>Parsed object.</returns>
        </member>
        <member name="M:Oyster.Math.IParser.Parse(System.String,System.Int32,System.Int32,System.UInt32,System.Collections.Generic.IDictionary{System.Char,System.UInt32},System.UInt32[])">
            <summary>
            Parses provided string representation of <see cref="T:Oyster.Math.IntX"/> object.
            </summary>
            <param name="value">Number as string.</param>
            <param name="startIndex">Index inside string from which to start.</param>
            <param name="endIndex">Index inside string on which to end.</param>
            <param name="numberBase">Number base.</param>
            <param name="charToDigits">Char-&gt;digit dictionary.</param>
            <param name="digitsRes">Resulting digits.</param>
            <returns>Parsed integer length.</returns>
        </member>
        <member name="M:Oyster.Math.ParserBase.#ctor(Oyster.Math.IParser)">
            <summary>
            Creates new <see cref="T:Oyster.Math.ParserBase"/> instance.
            </summary>
            <param name="pow2Parser">Parser for pow2 case.</param>
        </member>
        <member name="M:Oyster.Math.ParserBase.Parse(System.String,System.UInt32,System.Collections.Generic.IDictionary{System.Char,System.UInt32},System.Boolean)">
            <summary>
            Parses provided string representation of <see cref="T:Oyster.Math.IntX"/> object.
            </summary>
            <param name="value">Number as string.</param>
            <param name="numberBase">Number base.</param>
            <param name="charToDigits">Char-&gt;digit dictionary.</param>
            <param name="checkFormat">Check actual format of number (0 or 0x at start).</param>
            <returns>Parsed object.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is a null reference.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="numberBase"/> is less then 2 or more then 16.</exception>
            <exception cref="T:System.FormatException"><paramref name="value"/> is not in valid format.</exception>
        </member>
        <member name="M:Oyster.Math.ParserBase.Parse(System.String,System.Int32,System.Int32,System.UInt32,System.Collections.Generic.IDictionary{System.Char,System.UInt32},System.UInt32[])">
            <summary>
            Parses provided string representation of <see cref="T:Oyster.Math.IntX"/> object.
            </summary>
            <param name="value">Number as string.</param>
            <param name="startIndex">Index inside string from which to start.</param>
            <param name="endIndex">Index inside string on which to end.</param>
            <param name="numberBase">Number base.</param>
            <param name="charToDigits">Char-&gt;digit dictionary.</param>
            <param name="digitsRes">Resulting digits.</param>
            <returns>Parsed integer length.</returns>
        </member>
        <member name="M:Oyster.Math.FastParser.#ctor(Oyster.Math.IParser,Oyster.Math.IParser)">
            <summary>
            Creates new <see cref="T:Oyster.Math.FastParser"/> instance.
            </summary>
            <param name="pow2Parser">Parser for pow2 case.</param>
            <param name="classicParser">Classic parser.</param>
        </member>
        <member name="M:Oyster.Math.FastParser.Parse(System.String,System.Int32,System.Int32,System.UInt32,System.Collections.Generic.IDictionary{System.Char,System.UInt32},System.UInt32[])">
            <summary>
            Parses provided string representation of <see cref="T:Oyster.Math.IntX"/> object.
            </summary>
            <param name="value">Number as string.</param>
            <param name="startIndex">Index inside string from which to start.</param>
            <param name="endIndex">Index inside string on which to end.</param>
            <param name="numberBase">Number base.</param>
            <param name="charToDigits">Char-&gt;digit dictionary.</param>
            <param name="digitsRes">Resulting digits.</param>
            <returns>Parsed integer length.</returns>
        </member>
        <member name="T:Oyster.Math.DivideManager">
            <summary>
            Used to retrieve needed divider.
            </summary>
        </member>
        <member name="F:Oyster.Math.DivideManager.ClassicDivider">
            <summary>
            Classic divider instance.
            </summary>
        </member>
        <member name="F:Oyster.Math.DivideManager.AutoNewtonDivider">
            <summary>
            Newton divider instance.
            </summary>
        </member>
        <member name="M:Oyster.Math.DivideManager.GetDivider(Oyster.Math.DivideMode)">
            <summary>
            Returns divider instance for given divide mode.
            </summary>
            <param name="mode">Divide mode.</param>
            <returns>Divider instance.</returns>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="mode"/> is out of range.</exception>
        </member>
        <member name="M:Oyster.Math.DivideManager.GetCurrentDivider">
            <summary>
            Returns current divider instance.
            </summary>
            <returns>Current divider instance.</returns>
        </member>
        <member name="T:Oyster.Math.StringConvertManager">
            <summary>
            Used to retrieve needed ToString converter.
            </summary>
        </member>
        <member name="F:Oyster.Math.StringConvertManager.ClassicStringConverter">
            <summary>
            Classic converter instance.
            </summary>
        </member>
        <member name="F:Oyster.Math.StringConvertManager.FastStringConverter">
            <summary>
            Fast converter instance.
            </summary>
        </member>
        <member name="M:Oyster.Math.StringConvertManager.GetStringConverter(Oyster.Math.ToStringMode)">
            <summary>
            Returns ToString converter instance for given ToString mode.
            </summary>
            <param name="mode">ToString mode.</param>
            <returns>Converter instance.</returns>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="mode"/> is out of range.</exception>
        </member>
        <member name="T:Oyster.Math.DigitHelper">
            <summary>
            Contains big integer uint[] digits utilitary methods.
            </summary>
        </member>
        <member name="M:Oyster.Math.DigitHelper.GetRealDigitsLength(System.UInt32[],System.UInt32)">
            <summary>
            Returns real length of digits array (excluding leading zeroes).
            </summary>
            <param name="digits">Big ingeter digits.</param>
            <param name="length">Initial big integers length.</param>
            <returns>Real length.</returns>
        </member>
        <member name="M:Oyster.Math.DigitHelper.GetRealDigitsLength(System.UInt32*,System.UInt32)">
            <summary>
            Returns real length of digits array (excluding leading zeroes).
            </summary>
            <param name="digits">Big ingeter digits.</param>
            <param name="length">Initial big integers length.</param>
            <returns>Real length.</returns>
        </member>
        <member name="M:Oyster.Math.DigitHelper.GetMinMaxLengthObjects(Oyster.Math.IntX,Oyster.Math.IntX,Oyster.Math.IntX@,Oyster.Math.IntX@)">
            <summary>
            Determines <see cref="T:Oyster.Math.IntX"/> object with lower length.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <param name="smallerInt">Resulting smaller big integer (by length only).</param>
            <param name="biggerInt">Resulting bigger big integer (by length only).</param>
        </member>
        <member name="M:Oyster.Math.DigitHelper.ToUInt32WithSign(System.Int32,System.UInt32@,System.Boolean@)">
            <summary>
            Converts int value to uint digit and value sign.
            </summary>
            <param name="value">Initial value.</param>
            <param name="resultValue">Resulting unsigned part.</param>
            <param name="negative">Resulting sign.</param>
        </member>
        <member name="M:Oyster.Math.DigitHelper.ToUInt64WithSign(System.Int64,System.UInt64@,System.Boolean@)">
            <summary>
            Converts long value to ulong digit and value sign.
            </summary>
            <param name="value">Initial value.</param>
            <param name="resultValue">Resulting unsigned part.</param>
            <param name="negative">Resulting sign.</param>
        </member>
        <member name="M:Oyster.Math.DigitHelper.SetBlockDigits(System.UInt32*,System.UInt32,System.UInt32)">
            <summary>
            Sets digits in given block to given value.
            </summary>
            <param name="block">Block start pointer.</param>
            <param name="blockLength">Block length.</param>
            <param name="value">Value to set.</param>
        </member>
        <member name="M:Oyster.Math.DigitHelper.SetBlockDigits(System.Double*,System.UInt32,System.Double)">
            <summary>
            Sets digits in given block to given value.
            </summary>
            <param name="block">Block start pointer.</param>
            <param name="blockLength">Block length.</param>
            <param name="value">Value to set.</param>
        </member>
        <member name="M:Oyster.Math.DigitHelper.DigitsBlockCopy(System.UInt32*,System.UInt32*,System.UInt32)">
            <summary>
            Copies digits from one block to another.
            </summary>
            <param name="blockFrom">From block start pointer.</param>
            <param name="blockTo">To block start pointer.</param>
            <param name="count">Count of dwords to copy.</param>
        </member>
        <member name="T:Oyster.Math.AutoFhtMultiplier">
            <summary>
            Multiplies using FHT.
            </summary>
        </member>
        <member name="T:Oyster.Math.MultiplierBase">
            <summary>
            Base class for multipliers.
            Contains default implementation of multiply operation over <see cref="T:Oyster.Math.IntX"/> instances.
            </summary>
        </member>
        <member name="T:Oyster.Math.IMultiplier">
            <summary>
            Multiplier class interface.
            </summary>
        </member>
        <member name="M:Oyster.Math.IMultiplier.Multiply(Oyster.Math.IntX,Oyster.Math.IntX)">
            <summary>
            Multiplies two big integers.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>Resulting big integer.</returns>
        </member>
        <member name="M:Oyster.Math.IMultiplier.Multiply(System.UInt32[],System.UInt32,System.UInt32[],System.UInt32,System.UInt32[])">
            <summary>
            Multiplies two big integers represented by their digits.
            </summary>
            <param name="digits1">First big integer digits.</param>
            <param name="length1">First big integer real length.</param>
            <param name="digits2">Second big integer digits.</param>
            <param name="length2">Second big integer real length.</param>
            <param name="digitsRes">Where to put resulting big integer.</param>
            <returns>Resulting big integer real length.</returns>
        </member>
        <member name="M:Oyster.Math.IMultiplier.Multiply(System.UInt32*,System.UInt32,System.UInt32*,System.UInt32,System.UInt32*)">
            <summary>
            Multiplies two big integers using pointers.
            </summary>
            <param name="digitsPtr1">First big integer digits.</param>
            <param name="length1">First big integer length.</param>
            <param name="digitsPtr2">Second big integer digits.</param>
            <param name="length2">Second big integer length.</param>
            <param name="digitsResPtr">Resulting big integer digits.</param>
            <returns>Resulting big integer length.</returns>
        </member>
        <member name="M:Oyster.Math.MultiplierBase.Multiply(Oyster.Math.IntX,Oyster.Math.IntX)">
            <summary>
            Multiplies two big integers.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>Resulting big integer.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="int1"/> or <paramref name="int2"/> is a null reference.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="int1"/> or <paramref name="int2"/> is too big for multiply operation.</exception>
        </member>
        <member name="M:Oyster.Math.MultiplierBase.Multiply(System.UInt32[],System.UInt32,System.UInt32[],System.UInt32,System.UInt32[])">
            <summary>
            Multiplies two big integers represented by their digits.
            </summary>
            <param name="digits1">First big integer digits.</param>
            <param name="length1">First big integer real length.</param>
            <param name="digits2">Second big integer digits.</param>
            <param name="length2">Second big integer real length.</param>
            <param name="digitsRes">Where to put resulting big integer.</param>
            <returns>Resulting big integer real length.</returns>
        </member>
        <member name="M:Oyster.Math.MultiplierBase.Multiply(System.UInt32*,System.UInt32,System.UInt32*,System.UInt32,System.UInt32*)">
            <summary>
            Multiplies two big integers using pointers.
            </summary>
            <param name="digitsPtr1">First big integer digits.</param>
            <param name="length1">First big integer length.</param>
            <param name="digitsPtr2">Second big integer digits.</param>
            <param name="length2">Second big integer length.</param>
            <param name="digitsResPtr">Resulting big integer digits.</param>
            <returns>Resulting big integer length.</returns>
        </member>
        <member name="M:Oyster.Math.AutoFhtMultiplier.#ctor(Oyster.Math.IMultiplier)">
            <summary>
            Creates new <see cref="T:Oyster.Math.AutoFhtMultiplier"/> instance.
            </summary>
            <param name="classicMultiplier">Multiplier to use if FHT is unapplicatible.</param>
        </member>
        <member name="M:Oyster.Math.AutoFhtMultiplier.Multiply(System.UInt32*,System.UInt32,System.UInt32*,System.UInt32,System.UInt32*)">
            <summary>
            Multiplies two big integers using pointers.
            </summary>
            <param name="digitsPtr1">First big integer digits.</param>
            <param name="length1">First big integer length.</param>
            <param name="digitsPtr2">Second big integer digits.</param>
            <param name="length2">Second big integer length.</param>
            <param name="digitsResPtr">Resulting big integer digits.</param>
            <returns>Resulting big integer real length.</returns>
        </member>
        <member name="T:Oyster.Math.Bits">
            <summary>
            Contains helping methods to with with bits in dword (<see cref="T:System.UInt32"/>).
            </summary>
        </member>
        <member name="M:Oyster.Math.Bits.Nlz(System.UInt32)">
            <summary>
            Returns number of leading zero bits in int.
            </summary>
            <param name="x">Int value.</param>
            <returns>Number of leading zero bits.</returns>
        </member>
        <member name="M:Oyster.Math.Bits.Msb(System.UInt32)">
            <summary>
            Counts position of the most significant bit in int.
            Can also be used as Floor(Log2(<paramref name="x" />)).
            </summary>
            <param name="x">Int value.</param>
            <returns>Position of the most significant one bit (-1 if all zeroes).</returns>
        </member>
        <member name="M:Oyster.Math.Bits.CeilLog2(System.UInt32)">
            <summary>
            Ceil(Log2(<paramref name="x" />)).
            </summary>
            <param name="x">Int value.</param>
            <returns>Ceil of the Log2.</returns>
        </member>
        <member name="T:Oyster.Math.ArrayPool`1">
            <summary>
            Generic arrays pool on weak references.
            </summary>
        </member>
        <member name="F:Oyster.Math.ArrayPool`1.Instance">
            <summary>
            Singleton instance.
            </summary>
        </member>
        <member name="M:Oyster.Math.ArrayPool`1.GetArray(System.UInt32)">
            <summary>
            Either returns array of given size from pool or creates it.
            </summary>
            <param name="length">Array length (always pow of 2).</param>
            <returns>Always array instance ready to use.</returns>
        </member>
        <member name="M:Oyster.Math.ArrayPool`1.AddArray(`0[])">
            <summary>
            Adds array to pool.
            </summary>
            <param name="array">Array to add (it/s length is always pow of 2).</param>
        </member>
        <member name="T:Oyster.Math.StringConverterBase">
            <summary>
            Base class for ToString converters.
            Contains default implementations of convert operation over <see cref="T:Oyster.Math.IntX"/> instances.
            </summary>
        </member>
        <member name="T:Oyster.Math.IStringConverter">
            <summary>
            ToString converter class interface.
            </summary>
        </member>
        <member name="M:Oyster.Math.IStringConverter.ToString(Oyster.Math.IntX,System.UInt32,System.Char[])">
            <summary>
            Returns string representation of <see cref="T:Oyster.Math.IntX"/> object in given base.
            </summary>
            <param name="intX">Big integer to convert.</param>
            <param name="numberBase">Base of system in which to do output.</param>
            <param name="alphabet">Alphabet which contains chars used to represent big integer, char position is coresponding digit value.</param>
            <returns>Object string representation.</returns>
        </member>
        <member name="M:Oyster.Math.IStringConverter.ToString(System.UInt32[],System.UInt32,System.UInt32,System.UInt32@)">
            <summary>
            Converts digits from internal representaion into given base.
            </summary>
            <param name="digits">Big integer digits.</param>
            <param name="length">Big integer length.</param>
            <param name="numberBase">Base to use for output.</param>
            <param name="outputLength">Calculated output length (will be corrected inside).</param>
            <returns>Conversion result (later will be transformed to string).</returns>
        </member>
        <member name="M:Oyster.Math.StringConverterBase.#ctor(Oyster.Math.IStringConverter)">
            <summary>
            Creates new <see cref="T:Oyster.Math.StringConverterBase"/> instance.
            </summary>
            <param name="pow2StringConverter">Converter for pow2 case.</param>
        </member>
        <member name="M:Oyster.Math.StringConverterBase.ToString(Oyster.Math.IntX,System.UInt32,System.Char[])">
            <summary>
            Returns string representation of <see cref="T:Oyster.Math.IntX"/> object in given base.
            </summary>
            <param name="intX">Big integer to convert.</param>
            <param name="numberBase">Base of system in which to do output.</param>
            <param name="alphabet">Alphabet which contains chars used to represent big integer, char position is coresponding digit value.</param>
            <returns>Object string representation.</returns>
            <exception cref="T:System.ArgumentException"><paramref name="numberBase"/> is less then 2 or <paramref name="intX"/> is too big to fit in string.</exception>
        </member>
        <member name="M:Oyster.Math.StringConverterBase.ToString(System.UInt32[],System.UInt32,System.UInt32,System.UInt32@)">
            <summary>
            Converts digits from internal representaion into given base.
            </summary>
            <param name="digits">Big integer digits.</param>
            <param name="length">Big integer length.</param>
            <param name="numberBase">Base to use for output.</param>
            <param name="outputLength">Calculated output length (will be corrected inside).</param>
            <returns>Conversion result (later will be transformed to string).</returns>
        </member>
        <member name="T:Oyster.Math.IntXGlobalSettings">
            <summary>
            <see cref="T:Oyster.Math.IntX"/> global settings.
            </summary>
        </member>
        <member name="P:Oyster.Math.IntXGlobalSettings.MultiplyMode">
            <summary>
            Multiply operation mode used in all <see cref="T:Oyster.Math.IntX"/> instances.
            Set to auto-FHT by default.
            </summary>
        </member>
        <member name="P:Oyster.Math.IntXGlobalSettings.DivideMode">
            <summary>
            Divide operation mode used in all <see cref="T:Oyster.Math.IntX"/> instances.
            Set to auto-Newton by default.
            </summary>
        </member>
        <member name="P:Oyster.Math.IntXGlobalSettings.ParseMode">
            <summary>
            Parse mode used in all <see cref="T:Oyster.Math.IntX"/> instances.
            Set to Fast by default.
            </summary>
        </member>
        <member name="P:Oyster.Math.IntXGlobalSettings.ToStringMode">
            <summary>
            To string conversion mode used in all <see cref="T:Oyster.Math.IntX"/> instances.
            Set to Fast by default.
            </summary>
        </member>
        <member name="P:Oyster.Math.IntXGlobalSettings.AutoNormalize">
            <summary>
            If true then each operation is ended with big integer normalization.
            Set to false by default.
            </summary>
        </member>
        <member name="P:Oyster.Math.IntXGlobalSettings.ApplyFhtValidityCheck">
            <summary>
            If true then FHT multiplication result is always checked for validity
            by multiplying integers lower digits using classic algorithm and comparing with FHT result.
            Set to true by default.
            </summary>
        </member>
        <member name="T:Oyster.Math.FhtHelper">
            <summary>
            Contains helping methods for work with FHT (Fast Hartley Transform).
            FHT is a better alternative of FFT (Fast Fourier Transform) - at least for <see cref="T:Oyster.Math.IntX"/>.
            </summary>
        </member>
        <member name="M:Oyster.Math.FhtHelper.ConvertDigitsToDouble(System.UInt32[],System.UInt32,System.UInt32)">
            <summary>
            Converts <see cref="T:Oyster.Math.IntX"/> digits into real representation (used in FHT).
            </summary>
            <param name="digits">Big integer digits.</param>
            <param name="length"><paramref name="digits"/> length.</param>
            <param name="newLength">Multiplication result length (must be pow of 2).</param>
            <returns>Double array.</returns>
        </member>
        <member name="M:Oyster.Math.FhtHelper.ConvertDigitsToDouble(System.UInt32*,System.UInt32,System.UInt32)">
            <summary>
            Converts <see cref="T:Oyster.Math.IntX"/> digits into real representation (used in FHT).
            </summary>
            <param name="digitsPtr">Big integer digits.</param>
            <param name="length"><paramref name="digitsPtr"/> length.</param>
            <param name="newLength">Multiplication result length (must be pow of 2).</param>
            <returns>Double array.</returns>
        </member>
        <member name="M:Oyster.Math.FhtHelper.ConvertDoubleToDigits(System.Double[],System.UInt32,System.UInt32,System.UInt32[])">
            <summary>
            Converts real digits representation (result of FHT) into usual <see cref="T:Oyster.Math.IntX"/> digits.
            </summary>
            <param name="array">Real digits representation.</param>
            <param name="length"><paramref name="array"/> length.</param>
            <param name="digitsLength">New digits array length (we always do know the upper value for this array).</param>
            <param name="digitsRes">Big integer digits.</param>
        </member>
        <member name="M:Oyster.Math.FhtHelper.ConvertDoubleToDigits(System.Double*,System.UInt32,System.UInt32,System.UInt32*)">
            <summary>
            Converts real digits representation (result of FHT) into usual <see cref="T:Oyster.Math.IntX"/> digits.
            </summary>
            <param name="slice">Real digits representation.</param>
            <param name="length"><paramref name="slice"/> length.</param>
            <param name="digitsLength">New digits array length (we always do know the upper value for this array).</param>
            <param name="digitsResPtr">Resulting digits storage.</param>
            <returns>Big integer digits (dword values).</returns>
        </member>
        <member name="M:Oyster.Math.FhtHelper.Fht(System.Double[],System.UInt32)">
            <summary>
            Performs FHT "in place" for given double[] array.
            </summary>
            <param name="array">Double array.</param>
            <param name="length">Array length.</param>
        </member>
        <member name="M:Oyster.Math.FhtHelper.Fht(System.Double*,System.UInt32,System.Int32)">
            <summary>
            Performs FHT "in place" for given double[] array slice.
            </summary>
            <param name="slice">Double array slice.</param>
            <param name="length">Slice length.</param>
            <param name="lengthLog2">Log2(<paramref name="length" />).</param>
        </member>
        <member name="M:Oyster.Math.FhtHelper.Fht4(System.Double*)">
            <summary>
            Performs FHT "in place" for given double[] array slice.
            Fast version for length == 4.
            </summary>
            <param name="slice">Double array slice.</param>
        </member>
        <member name="M:Oyster.Math.FhtHelper.MultiplyFhtResults(System.Double[],System.Double[],System.UInt32)">
            <summary>
            Multiplies two FHT results and stores multiplication in first one.
            </summary>
            <param name="data">First FHT result.</param>
            <param name="data2">Second FHT result.</param>
            <param name="length">FHT results length.</param>
        </member>
        <member name="M:Oyster.Math.FhtHelper.MultiplyFhtResults(System.Double*,System.Double*,System.UInt32)">
            <summary>
            Multiplies two FHT results and stores multiplication in first one.
            </summary>
            <param name="slice">First FHT result.</param>
            <param name="slice2">Second FHT result.</param>
            <param name="length">FHT results length.</param>
        </member>
        <member name="M:Oyster.Math.FhtHelper.ReverseFht(System.Double[],System.UInt32)">
            <summary>
            Performs FHT reverse "in place" for given double[] array.
            </summary>
            <param name="array">Double array.</param>
            <param name="length">Array length.</param>
        </member>
        <member name="M:Oyster.Math.FhtHelper.ReverseFht(System.Double*,System.UInt32,System.Int32)">
            <summary>
            Performs reverse FHT "in place" for given double[] array slice.
            </summary>
            <param name="slice">Double array slice.</param>
            <param name="length">Slice length.</param>
            <param name="lengthLog2">Log2(<paramref name="length" />).</param>
        </member>
        <member name="M:Oyster.Math.FhtHelper.ReverseFht8(System.Double*)">
            <summary>
            Performs reverse FHT "in place" for given double[] array slice.
            Fast version for length == 8.
            </summary>
            <param name="slice">Double array slice.</param>
        </member>
        <member name="M:Oyster.Math.FhtHelper.FhtButterfly(System.Double*,System.Double*,System.UInt32,System.UInt32,System.Double,System.Double)">
            <summary>
            Performs "butterfly" operation for <see cref="M:Oyster.Math.FhtHelper.Fht(System.Double*,System.UInt32,System.Int32)"/>.
            </summary>
            <param name="slice1">First data array slice.</param>
            <param name="slice2">Second data array slice.</param>
            <param name="index1">First slice index.</param>
            <param name="index2">Second slice index.</param>
            <param name="cos">Cos value.</param>
            <param name="sin">Sin value.</param>
        </member>
        <member name="M:Oyster.Math.FhtHelper.ReverseFhtButterfly(System.Double*,System.Double*,System.UInt32,System.UInt32,System.Double,System.Double)">
            <summary>
            Performs "butterfly" operation for <see cref="M:Oyster.Math.FhtHelper.ReverseFht(System.Double*,System.UInt32,System.Int32)"/>.
            </summary>
            <param name="slice1">First data array slice.</param>
            <param name="slice2">Second data array slice.</param>
            <param name="index1">First slice index.</param>
            <param name="index2">Second slice index.</param>
            <param name="cos">Cos value.</param>
            <param name="sin">Sin value.</param>
        </member>
        <member name="M:Oyster.Math.FhtHelper.ReverseFhtButterfly2(System.Double*,System.Double*,System.UInt32,System.UInt32,System.Double,System.Double)">
            <summary>
            Performs "butterfly" operation for <see cref="M:Oyster.Math.FhtHelper.ReverseFht(System.Double*,System.UInt32,System.Int32)"/>.
            Another version.
            </summary>
            <param name="slice1">First data array slice.</param>
            <param name="slice2">Second data array slice.</param>
            <param name="index1">First slice index.</param>
            <param name="index2">Second slice index.</param>
            <param name="cos">Cos value.</param>
            <param name="sin">Sin value.</param>
        </member>
        <member name="M:Oyster.Math.FhtHelper.FillSineTable(System.Double[])">
            <summary>
            Fills sine table for FHT.
            </summary>
            <param name="sineTable">Sine table to fill.</param>
        </member>
        <member name="M:Oyster.Math.FhtHelper.GetInitialTrigValues(Oyster.Math.FhtHelper.TrigValues*,System.Int32)">
            <summary>
            Initializes trigonometry values for FHT.
            </summary>
            <param name="valuesPtr">Values to init.</param>
            <param name="lengthLog2">Log2(processing slice length).</param>
        </member>
        <member name="M:Oyster.Math.FhtHelper.NextTrigValues(Oyster.Math.FhtHelper.TrigValues*)">
            <summary>
            Generates next trigonometry values for FHT basing on previous ones.
            </summary>
            <param name="valuesPtr">Current trig values.</param>
        </member>
        <member name="T:Oyster.Math.FhtHelper.TrigValues">
            <summary>
            Trigonometry values.
            </summary>
        </member>
        <member name="F:Oyster.Math.FhtHelper.TrigValues.TableSin">
            <summary>
            Sin value from <see cref="F:Oyster.Math.FhtHelper.SineTable"/>.
            </summary>
        </member>
        <member name="F:Oyster.Math.FhtHelper.TrigValues.TableCos">
            <summary>
            Cos value from <see cref="F:Oyster.Math.FhtHelper.SineTable"/>.
            </summary>
        </member>
        <member name="F:Oyster.Math.FhtHelper.TrigValues.Sin">
            <summary>
            Sin value.
            </summary>
        </member>
        <member name="F:Oyster.Math.FhtHelper.TrigValues.Cos">
            <summary>
            Cos value.
            </summary>
        </member>
        <member name="T:Oyster.Math.MultiplyManager">
            <summary>
            Used to retrieve needed multiplier.
            </summary>
        </member>
        <member name="F:Oyster.Math.MultiplyManager.ClassicMultiplier">
            <summary>
            Classic multiplier instance.
            </summary>
        </member>
        <member name="F:Oyster.Math.MultiplyManager.AutoFhtMultiplier">
            <summary>
            FHT multiplier instance.
            </summary>
        </member>
        <member name="M:Oyster.Math.MultiplyManager.GetMultiplier(Oyster.Math.MultiplyMode)">
            <summary>
            Returns multiplier instance for given multiply mode.
            </summary>
            <param name="mode">Multiply mode.</param>
            <returns>Multiplier instance.</returns>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="mode"/> is out of range.</exception>
        </member>
        <member name="M:Oyster.Math.MultiplyManager.GetCurrentMultiplier">
            <summary>
            Returns current multiplier instance.
            </summary>
            <returns>Current multiplier instance.</returns>
        </member>
        <member name="T:Oyster.Math.ClassicDivider">
            <summary>
            Divider using "classic" algorithm.
            </summary>
        </member>
        <member name="M:Oyster.Math.ClassicDivider.DivMod(System.UInt32[],System.UInt32[],System.UInt32@,System.UInt32[],System.UInt32[],System.UInt32,System.UInt32[],Oyster.Math.DivModResultFlags,System.Int32)">
            <summary>
            Divides two big integers.
            Also modifies <paramref name="digits1" /> and <paramref name="length1"/> (it will contain remainder).
            </summary>
            <param name="digits1">First big integer digits.</param>
            <param name="digitsBuffer1">Buffer for first big integer digits. May also contain remainder. Can be null - in this case it's created if necessary.</param>
            <param name="length1">First big integer length.</param>
            <param name="digits2">Second big integer digits.</param>
            <param name="digitsBuffer2">Buffer for second big integer digits. Only temporarily used. Can be null - in this case it's created if necessary.</param>
            <param name="length2">Second big integer length.</param>
            <param name="digitsRes">Resulting big integer digits.</param>
            <param name="resultFlags">Which operation results to return.</param>
            <param name="cmpResult">Big integers comparsion result (pass -2 if omitted).</param>
            <returns>Resulting big integer length.</returns>
        </member>
        <member name="M:Oyster.Math.ClassicDivider.DivMod(System.UInt32*,System.UInt32*,System.UInt32@,System.UInt32*,System.UInt32*,System.UInt32,System.UInt32*,Oyster.Math.DivModResultFlags,System.Int32)">
            <summary>
            Divides two big integers.
            Also modifies <paramref name="digitsPtr1" /> and <paramref name="length1"/> (it will contain remainder).
            </summary>
            <param name="digitsPtr1">First big integer digits.</param>
            <param name="digitsBufferPtr1">Buffer for first big integer digits. May also contain remainder.</param>
            <param name="length1">First big integer length.</param>
            <param name="digitsPtr2">Second big integer digits.</param>
            <param name="digitsBufferPtr2">Buffer for second big integer digits. Only temporarily used.</param>
            <param name="length2">Second big integer length.</param>
            <param name="digitsResPtr">Resulting big integer digits.</param>
            <param name="resultFlags">Which operation results to return.</param>
            <param name="cmpResult">Big integers comparsion result (pass -2 if omitted).</param>
            <returns>Resulting big integer length.</returns>
        </member>
        <member name="T:Oyster.Math.ClassicStringConverter">
            <summary>
            Classic ToString converting algorithm using division (O[n^2]).
            </summary>
        </member>
        <member name="M:Oyster.Math.ClassicStringConverter.#ctor(Oyster.Math.IStringConverter)">
            <summary>
            Creates new <see cref="T:Oyster.Math.ClassicStringConverter"/> instance.
            </summary>
            <param name="pow2StringConverter">Converter for pow2 case.</param>
        </member>
        <member name="M:Oyster.Math.ClassicStringConverter.ToString(System.UInt32[],System.UInt32,System.UInt32,System.UInt32@)">
            <summary>
            Converts digits from internal representaion into given base.
            </summary>
            <param name="digits">Big integer digits.</param>
            <param name="length">Big integer length.</param>
            <param name="numberBase">Base to use for output.</param>
            <param name="outputLength">Calculated output length (will be corrected inside).</param>
            <returns>Conversion result (later will be transformed to string).</returns>
        </member>
        <member name="T:Oyster.Math.ClassicParser">
            <summary>
            Classic parsing algorithm using multiplication (O[n^2]).
            </summary>
        </member>
        <member name="M:Oyster.Math.ClassicParser.#ctor(Oyster.Math.IParser)">
            <summary>
            Creates new <see cref="T:Oyster.Math.ClassicParser"/> instance.
            </summary>
            <param name="pow2Parser">Parser for pow2 case.</param>
        </member>
        <member name="M:Oyster.Math.ClassicParser.Parse(System.String,System.Int32,System.Int32,System.UInt32,System.Collections.Generic.IDictionary{System.Char,System.UInt32},System.UInt32[])">
            <summary>
            Parses provided string representation of <see cref="T:Oyster.Math.IntX"/> object.
            </summary>
            <param name="value">Number as string.</param>
            <param name="startIndex">Index inside string from which to start.</param>
            <param name="endIndex">Index inside string on which to end.</param>
            <param name="numberBase">Number base.</param>
            <param name="charToDigits">Char-&gt;digit dictionary.</param>
            <param name="digitsRes">Resulting digits.</param>
            <returns>Parsed integer length.</returns>
        </member>
        <member name="T:Oyster.Math.StrRepHelper">
            <summary>
            Helps to work with <see cref="T:Oyster.Math.IntX"/> string representations.
            </summary>
        </member>
        <member name="M:Oyster.Math.StrRepHelper.GetDigit(System.Collections.Generic.IDictionary{System.Char,System.UInt32},System.Char,System.UInt32)">
            <summary>
            Returns digit for given char.
            </summary>
            <param name="charToDigits">Char-&gt;digit dictionary.</param>
            <param name="ch">Char which represents big integer digit.</param>
            <param name="numberBase">String representation number base.</param>
            <returns>Digit.</returns>
            <exception cref="T:System.FormatException"><paramref name="ch"/> is not in valid format.</exception>
        </member>
        <member name="M:Oyster.Math.StrRepHelper.AssertAlphabet(System.String,System.UInt32)">
            <summary>
            Verfies string alphabet provider by user for validity.
            </summary>
            <param name="alphabet">Alphabet.</param>
            <param name="numberBase">String representation number base.</param>
        </member>
        <member name="M:Oyster.Math.StrRepHelper.CharDictionaryFromAlphabet(System.String,System.UInt32)">
            <summary>
            Generates char->digit dictionary from alphabet.
            </summary>
            <param name="alphabet">Alphabet.</param>
            <param name="numberBase">String representation number base.</param>
            <returns>Char->digit dictionary.</returns>
        </member>
        <member name="T:Oyster.Math.FhtMultiplicationException">
            <summary>
            Used when FHT multiplication result is incorrect.
            </summary>
        </member>
        <member name="M:Oyster.Math.FhtMultiplicationException.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Oyster.Math.FhtMultiplicationException"/> class with a specified error message.
            </summary>
            <param name="message">A message that describes the error.</param>
        </member>
        <member name="M:Oyster.Math.FhtMultiplicationException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:Oyster.Math.FhtMultiplicationException"/> class with serialized data.
            </summary>
            <param name="info">The object that holds the serialized object data.</param>
            <param name="context">The contextual information about the source or destination.</param>
        </member>
        <member name="T:Oyster.Math.Constants">
            <summary>
            Constants used in <see cref="T:Oyster.Math.IntX"/> and helping classes.
            </summary>
        </member>
        <member name="F:Oyster.Math.Constants.DigitOpeningBracet">
            <summary>
            Digit opening bracet (used for bases bigger then 16).
            </summary>
        </member>
        <member name="F:Oyster.Math.Constants.DigitClosingBracet">
            <summary>
            Digit closing bracet (used for bases bigger then 16).
            </summary>
        </member>
        <member name="F:Oyster.Math.Constants.DigitsMinusChar">
            <summary>
            Minus char (-).
            </summary>
        </member>
        <member name="F:Oyster.Math.Constants.MinPooledArraySizeLog2">
            <summary>
            Minimal Log2(array length) which will be pooled using any array pool.
            </summary>
        </member>
        <member name="F:Oyster.Math.Constants.MaxPooledArraySizeLog2">
            <summary>
            Maximal Log2(array length) which will be pooled using any array pool.
            </summary>
        </member>
        <member name="F:Oyster.Math.Constants.MaxArrayPoolCount">
            <summary>
            Maximal allowed array pool items count in each stack.
            </summary>
        </member>
        <member name="F:Oyster.Math.Constants.AutoFhtLengthLowerBound">
            <summary>
            <see cref="T:Oyster.Math.IntX"/> length from which FHT is used (in auto-FHT mode).
            Before this length usual multiply algorithm works faster.
            </summary>
        </member>
        <member name="F:Oyster.Math.Constants.AutoFhtLengthUpperBound">
            <summary>
            <see cref="T:Oyster.Math.IntX"/> length 'till which FHT is used (in auto-FHT mode).
            After this length using of FHT may be unsafe due to big precision errors.
            </summary>
        </member>
        <member name="F:Oyster.Math.Constants.FhtValidityCheckDigitCount">
            <summary>
            Number of lower digits used to check FHT multiplication result validity.
            </summary>
        </member>
        <member name="F:Oyster.Math.Constants.AutoNewtonLengthLowerBound">
            <summary>
            <see cref="T:Oyster.Math.IntX"/> length from which Newton approach is used (in auto-Newton mode).
            Before this length usual divide algorithm works faster.
            </summary>
        </member>
        <member name="F:Oyster.Math.Constants.AutoNewtonLengthUpperBound">
            <summary>
            <see cref="T:Oyster.Math.IntX"/> length 'till which Newton approach is used (in auto-Newton mode).
            After this length using of fast division may be slow.
            </summary>
        </member>
        <member name="F:Oyster.Math.Constants.FastParseLengthLowerBound">
            <summary>
            <see cref="T:Oyster.Math.IntX"/> length from which fast parsing is used (in Fast parsing mode).
            Before this length usual parsing algorithm works faster.
            </summary>
        </member>
        <member name="F:Oyster.Math.Constants.FastParseLengthUpperBound">
            <summary>
            <see cref="T:Oyster.Math.IntX"/> length 'till which fast parsing is used (in Fast parsing mode).
            After this length using of parsing will be slow.
            </summary>
        </member>
        <member name="F:Oyster.Math.Constants.FastConvertLengthLowerBound">
            <summary>
            <see cref="T:Oyster.Math.IntX"/> length from which fast convertion is used (in Fast convert mode).
            Before this length usual convertion algorithm works faster.
            </summary>
        </member>
        <member name="F:Oyster.Math.Constants.FastConvertLengthUpperBound">
            <summary>
            <see cref="T:Oyster.Math.IntX"/> length 'till which fast convertion is used (in Fast convert mode).
            After this length using of convertion will be slow.
            </summary>
        </member>
        <member name="F:Oyster.Math.Constants.DigitBitCount">
            <summary>
            Count of bits in one <see cref="T:Oyster.Math.IntX"/> digit.
            </summary>
        </member>
        <member name="F:Oyster.Math.Constants.MaxBitCount">
            <summary>
            Maximum count of bits which can fit in <see cref="T:Oyster.Math.IntX"/>.
            </summary>
        </member>
        <member name="F:Oyster.Math.Constants.BitCountStepOf2">
            <summary>
            2^<see cref="F:Oyster.Math.Constants.DigitBitCount"/>.
            </summary>
        </member>
        <member name="F:Oyster.Math.Constants.BaseUpperChars">
            <summary>
            Chars used to parse/output big integers (upper case).
            </summary>
        </member>
        <member name="F:Oyster.Math.Constants.BaseLowerChars">
            <summary>
            Chars used to parse/output big integers (lower case).
            </summary>
        </member>
        <member name="F:Oyster.Math.Constants.BaseCharToDigits">
            <summary>
            Standard char->digit dictionary.
            </summary>
        </member>
        <member name="F:Oyster.Math.Constants.DigitBaseLog">
            <summary>
            Natural logarithm of digits base (log(2^32)).
            </summary>
        </member>
        <member name="T:Oyster.Math.OpHelper">
            <summary>
            Contains helping methods for operations over <see cref="T:Oyster.Math.IntX"/>.
            </summary>
        </member>
        <member name="M:Oyster.Math.OpHelper.Add(Oyster.Math.IntX,Oyster.Math.IntX)">
            <summary>
            Adds two big integers.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>Resulting big integer.</returns>
            <exception cref="T:System.ArgumentException"><paramref name="int1"/> or <paramref name="int2"/> is too big for add operation.</exception>
        </member>
        <member name="M:Oyster.Math.OpHelper.Sub(Oyster.Math.IntX,Oyster.Math.IntX)">
            <summary>
            Subtracts two big integers.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>Resulting big integer.</returns>
        </member>
        <member name="M:Oyster.Math.OpHelper.AddSub(Oyster.Math.IntX,Oyster.Math.IntX,System.Boolean)">
            <summary>
            Adds/subtracts one <see cref="T:Oyster.Math.IntX"/> to/from another.
            Determines which operation to use basing on operands signs.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <param name="subtract">Was subtraction initially.</param>
            <returns>Add/subtract operation result.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="int1"/> or <paramref name="int2"/> is a null reference.</exception>
        </member>
        <member name="M:Oyster.Math.OpHelper.Pow(Oyster.Math.IntX,System.UInt32,Oyster.Math.MultiplyMode)">
            <summary>
            Returns a specified big integer raised to the specified power.
            </summary>
            <param name="value">Number to raise.</param>
            <param name="power">Power.</param>
            <param name="multiplyMode">Multiply mode set explicitly.</param>
            <returns>Number in given power.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is a null reference.</exception>
        </member>
        <member name="M:Oyster.Math.OpHelper.Cmp(Oyster.Math.IntX,Oyster.Math.IntX,System.Boolean)">
            <summary>
            Compares 2 <see cref="T:Oyster.Math.IntX"/> objects.
            Returns "-2" if any argument is null, "-1" if <paramref name="int1"/> &lt; <paramref name="int2"/>,
            "0" if equal and "1" if &gt;.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <param name="throwNullException">Raises or not <see cref="T:System.NullReferenceException"/>.</param>
            <returns>Comparsion result.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="int1"/> or <paramref name="int2"/> is a null reference and <paramref name="throwNullException"/> is set to true.</exception>
        </member>
        <member name="M:Oyster.Math.OpHelper.Cmp(Oyster.Math.IntX,System.Int32)">
            <summary>
            Compares <see cref="T:Oyster.Math.IntX"/> object to int.
            Returns "-1" if <paramref name="int1"/> &lt; <paramref name="int2"/>, "0" if equal and "1" if &gt;.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second integer.</param>
            <returns>Comparsion result.</returns>
        </member>
        <member name="M:Oyster.Math.OpHelper.Cmp(Oyster.Math.IntX,System.UInt32)">
            <summary>
            Compares <see cref="T:Oyster.Math.IntX"/> object to unsigned int.
            Returns "-1" if <paramref name="int1"/> &lt; <paramref name="int2"/>, "0" if equal and "1" if &gt;.
            For internal use.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second unsigned integer.</param>
            <returns>Comparsion result.</returns>
        </member>
        <member name="M:Oyster.Math.OpHelper.Sh(Oyster.Math.IntX,System.Int64,System.Boolean)">
            <summary>
            Shifts <see cref="T:Oyster.Math.IntX"/> object.
            Determines which operation to use basing on shift sign.
            </summary>
            <param name="intX">Big integer.</param>
            <param name="shift">Bits count to shift.</param>
            <param name="toLeft">If true the shifting to the left.</param>
            <returns>Bitwise shift operation result.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="intX"/> is a null reference.</exception>
        </member>
        <member name="T:Oyster.Math.NewtonHelper">
            <summary>
            Contains helping methods for fast division
            using Newton approximation approach and fast multiplication.
            </summary>
        </member>
        <member name="M:Oyster.Math.NewtonHelper.GetIntegerOpposite(System.UInt32*,System.UInt32,System.UInt32,System.UInt32*,System.UInt32@,System.UInt64@)">
            <summary>
            Generates integer opposite to the given one using approximation.
            Uses algorithm from Khuth vol. 2 3rd Edition (4.3.3).
            </summary>
            <param name="digitsPtr">Initial big integer digits.</param>
            <param name="length">Initial big integer length.</param>
            <param name="maxLength">Precision length.</param>
            <param name="bufferPtr">Buffer in which shifted big integer may be stored.</param>
            <param name="newLength">Resulting big integer length.</param>
            <param name="rightShift">How much resulting big integer is shifted to the left (or: must be shifted to the right).</param>
            <returns>Resulting big integer digits.</returns>
        </member>
        <member name="T:Oyster.Math.IntXSettings">
            <summary>
            <see cref="T:Oyster.Math.IntX"/> instance settings.
            </summary>
        </member>
        <member name="M:Oyster.Math.IntXSettings.#ctor(Oyster.Math.IntXGlobalSettings)">
            <summary>
            Creates new <see cref="T:Oyster.Math.IntXSettings"/> instance.
            </summary>
            <param name="globalSettings">IntX global settings to copy.</param>
        </member>
        <member name="P:Oyster.Math.IntXSettings.ToStringMode">
            <summary>
            To string conversion mode used in this <see cref="T:Oyster.Math.IntX"/> instance.
            Set to value from <see cref="P:Oyster.Math.IntX.GlobalSettings"/> by default.
            </summary>
        </member>
        <member name="P:Oyster.Math.IntXSettings.AutoNormalize">
            <summary>
            If true then each operation is ended with big integer normalization.
            Set to value from <see cref="P:Oyster.Math.IntX.GlobalSettings"/> by default.
            </summary>
        </member>
        <member name="T:Oyster.Math.Pow2Parser">
            <summary>
            Provides special fast (with linear time) parsing if base is pow of 2.
            </summary>
        </member>
        <member name="M:Oyster.Math.Pow2Parser.Parse(System.String,System.Int32,System.Int32,System.UInt32,System.Collections.Generic.IDictionary{System.Char,System.UInt32},System.UInt32[])">
            <summary>
            Parses provided string representation of <see cref="T:Oyster.Math.IntX"/> object.
            </summary>
            <param name="value">Number as string.</param>
            <param name="startIndex">Index inside string from which to start.</param>
            <param name="endIndex">Index inside string on which to end.</param>
            <param name="numberBase">Number base.</param>
            <param name="charToDigits">Char-&gt;digit dictionary.</param>
            <param name="digitsRes">Resulting digits.</param>
            <returns>Parsed integer length.</returns>
        </member>
        <member name="T:Oyster.Math.DivModResultFlags">
            <summary>
            <see cref="T:Oyster.Math.IntX"/> divide results to return.
            </summary>
        </member>
        <member name="F:Oyster.Math.DivModResultFlags.Div">
            <summary>
            Divident is returned.
            </summary>
        </member>
        <member name="F:Oyster.Math.DivModResultFlags.Mod">
            <summary>
            Remainder is returned.
            </summary>
        </member>
        <member name="T:Oyster.Math.MultiplyMode">
            <summary>
            Big integers multiply mode used in <see cref="T:Oyster.Math.IntX"/>.
            </summary>
        </member>
        <member name="F:Oyster.Math.MultiplyMode.AutoFht">
            <summary>
            FHT (Fast Hartley Transform) is used for really big integers.
            Time estimate is O(n * log n).
            Default mode.
            </summary>
        </member>
        <member name="F:Oyster.Math.MultiplyMode.Classic">
            <summary>
            Classic method is used.
            Time estimate is O(n ^ 2).
            </summary>
        </member>
        <member name="T:Oyster.Math.DivideMode">
            <summary>
            Big integers divide mode used in <see cref="T:Oyster.Math.IntX"/>.
            </summary>
        </member>
        <member name="F:Oyster.Math.DivideMode.AutoNewton">
            <summary>
            Newton approximation algorithm is used for really big integers.
            Time estimate is same as for multiplication.
            Default mode.
            </summary>
        </member>
        <member name="F:Oyster.Math.DivideMode.Classic">
            <summary>
            Classic method is used.
            Time estimate is O(n ^ 2).
            </summary>
        </member>
        <member name="T:Oyster.Math.ParseMode">
            <summary>
            Big integers parsing mode used in <see cref="T:Oyster.Math.IntX"/>.
            </summary>
        </member>
        <member name="F:Oyster.Math.ParseMode.Fast">
            <summary>
            Fast method which uses divide-by-two approach and fast multiply to parse numbers.
            Time estimate is O(n * [log n]^2).
            Default mode.
            </summary>
        </member>
        <member name="F:Oyster.Math.ParseMode.Classic">
            <summary>
            Classic method is used (using multiplication).
            Time estimate is O(n ^ 2).
            </summary>
        </member>
        <member name="T:Oyster.Math.ToStringMode">
            <summary>
            Big integers to string conversion mode used in <see cref="T:Oyster.Math.IntX"/>.
            </summary>
        </member>
        <member name="F:Oyster.Math.ToStringMode.Fast">
            <summary>
            Fast method which uses divide-by-two approach to convert numbers.
            Default mode.
            </summary>
        </member>
        <member name="F:Oyster.Math.ToStringMode.Classic">
            <summary>
            Classic method is used (using division).
            Time estimate is O(n ^ 2).
            </summary>
        </member>
        <member name="T:Oyster.Math.Pow2StringConverter">
            <summary>
            Provides special fast (with linear time) ToString converting if base is pow of 2.
            </summary>
        </member>
        <member name="M:Oyster.Math.Pow2StringConverter.ToString(System.UInt32[],System.UInt32,System.UInt32,System.UInt32@)">
            <summary>
            Converts digits from internal representaion into given base.
            </summary>
            <param name="digits">Big integer digits.</param>
            <param name="length">Big integer length.</param>
            <param name="numberBase">Base to use for output.</param>
            <param name="outputLength">Calculated output length (will be corrected inside).</param>
            <returns>Conversion result (later will be transformed to string).</returns>
        </member>
        <member name="T:Oyster.Math.FastStringConverter">
            <summary>
            Fast ToString converting algorithm using divide-by-two.
            </summary>
        </member>
        <member name="M:Oyster.Math.FastStringConverter.#ctor(Oyster.Math.IStringConverter,Oyster.Math.IStringConverter)">
            <summary>
            Creates new <see cref="T:Oyster.Math.FastStringConverter"/> instance.
            </summary>
            <param name="pow2StringConverter">Converter for pow2 case.</param>
            <param name="classicStringConverter">Classic converter.</param>
        </member>
        <member name="M:Oyster.Math.FastStringConverter.ToString(System.UInt32[],System.UInt32,System.UInt32,System.UInt32@)">
            <summary>
            Converts digits from internal representaion into given base.
            </summary>
            <param name="digits">Big integer digits.</param>
            <param name="length">Big integer length.</param>
            <param name="numberBase">Base to use for output.</param>
            <param name="outputLength">Calculated output length (will be corrected inside).</param>
            <returns>Conversion result (later will be transformed to string).</returns>
        </member>
        <member name="T:Oyster.Math.ClassicMultiplier">
            <summary>
            Multiplies using "classic" algorithm.
            </summary>
        </member>
        <member name="M:Oyster.Math.ClassicMultiplier.Multiply(System.UInt32*,System.UInt32,System.UInt32*,System.UInt32,System.UInt32*)">
            <summary>
            Multiplies two big integers using pointers.
            </summary>
            <param name="digitsPtr1">First big integer digits.</param>
            <param name="length1">First big integer length.</param>
            <param name="digitsPtr2">Second big integer digits.</param>
            <param name="length2">Second big integer length.</param>
            <param name="digitsResPtr">Resulting big integer digits.</param>
            <returns>Resulting big integer length.</returns>
        </member>
        <member name="T:Oyster.Math.IntX">
            <summary>
            Numeric class which represents arbitrary-precision integers.
            (c) Andriy Kozachuk a.k.a. Oyster [dev.oyster@gmail.com] 2005-2010
            </summary>
        </member>
        <member name="M:Oyster.Math.IntX.#ctor">
            <summary>
            Creates new big integer with zero value.
            </summary>
        </member>
        <member name="M:Oyster.Math.IntX.#ctor(System.Int32)">
            <summary>
            Creates new big integer from integer value.
            </summary>
            <param name="value">Integer value to create big integer from.</param>
        </member>
        <member name="M:Oyster.Math.IntX.#ctor(System.UInt32)">
            <summary>
            Creates new big integer from unsigned integer value.
            </summary>
            <param name="value">Unsigned integer value to create big integer from.</param>
        </member>
        <member name="M:Oyster.Math.IntX.#ctor(System.Int64)">
            <summary>
            Creates new big integer from long value.
            </summary>
            <param name="value">Long value to create big integer from.</param>
        </member>
        <member name="M:Oyster.Math.IntX.#ctor(System.UInt64)">
            <summary>
            Creates new big integer from unsigned long value.
            </summary>
            <param name="value">Unsigned long value to create big integer from.</param>
        </member>
        <member name="M:Oyster.Math.IntX.#ctor(System.UInt32[],System.Boolean)">
            <summary>
            Creates new big integer from array of it's "digits".
            Digit with lower index has less weight.
            </summary>
            <param name="digits">Array of <see cref="T:Oyster.Math.IntX"/> digits.</param>
            <param name="negative">True if this number is negative.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="digits"/> is a null reference.</exception>
        </member>
        <member name="M:Oyster.Math.IntX.#ctor(System.String)">
            <summary>
            Creates new <see cref="T:Oyster.Math.IntX"/> from string.
            </summary>
            <param name="value">Number as string.</param>
        </member>
        <member name="M:Oyster.Math.IntX.#ctor(System.String,System.UInt32)">
            <summary>
            Creates new <see cref="T:Oyster.Math.IntX"/> from string.
            </summary>
            <param name="value">Number as string.</param>
            <param name="numberBase">Number base.</param>
        </member>
        <member name="M:Oyster.Math.IntX.#ctor(Oyster.Math.IntX)">
            <summary>
            Copy constructor.
            </summary>
            <param name="value">Value to copy from.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is a null reference.</exception>
        </member>
        <member name="M:Oyster.Math.IntX.#ctor(System.UInt32,System.Boolean)">
            <summary>
            Creates new empty big integer with desired sign and length.
            
            For internal use.
            </summary>
            <param name="length">Desired digits length.</param>
            <param name="negative">Desired integer sign.</param>
        </member>
        <member name="M:Oyster.Math.IntX.#ctor(System.UInt32[],System.Boolean,System.UInt32)">
            <summary>
            Creates new big integer from array of it's "digits" but with given length.
            Digit with lower index has less weight.
            
            For internal use.
            </summary>
            <param name="digits">Array of <see cref="T:Oyster.Math.IntX"/> digits.</param>
            <param name="negative">True if this number is negative.</param>
            <param name="length">Length to use for internal digits array.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="digits"/> is a null reference.</exception>
        </member>
        <member name="M:Oyster.Math.IntX.op_Equality(Oyster.Math.IntX,Oyster.Math.IntX)">
            <summary>
            Compares two <see cref="T:Oyster.Math.IntX"/> objects and returns true if their internal state is equal.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>True if equals.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Equality(Oyster.Math.IntX,System.Int32)">
            <summary>
            Compares <see cref="T:Oyster.Math.IntX"/> object with integer and returns true if their internal state is equal.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second integer.</param>
            <returns>True if equals.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Equality(System.Int32,Oyster.Math.IntX)">
            <summary>
            Compares integer with <see cref="T:Oyster.Math.IntX"/> object and returns true if their internal state is equal.
            </summary>
            <param name="int1">First integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>True if equals.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Equality(Oyster.Math.IntX,System.UInt32)">
            <summary>
            Compares <see cref="T:Oyster.Math.IntX"/> object with unsinged integer and returns true if their internal state is equal.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second unsinged integer.</param>
            <returns>True if equals.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Equality(System.UInt32,Oyster.Math.IntX)">
            <summary>
            Compares unsinged integer with <see cref="T:Oyster.Math.IntX"/> object and returns true if their internal state is equal.
            </summary>
            <param name="int1">First unsinged integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>True if equals.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Inequality(Oyster.Math.IntX,Oyster.Math.IntX)">
            <summary>
            Compares two <see cref="T:Oyster.Math.IntX"/> objects and returns true if their internal state is not equal.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>True if not equals.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Inequality(Oyster.Math.IntX,System.Int32)">
            <summary>
            Compares <see cref="T:Oyster.Math.IntX"/> object with integer and returns true if their internal state is not equal.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second integer.</param>
            <returns>True if not equals.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Inequality(System.Int32,Oyster.Math.IntX)">
            <summary>
            Compares integer with <see cref="T:Oyster.Math.IntX"/> object and returns true if their internal state is not equal.
            </summary>
            <param name="int1">First integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>True if not equals.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Inequality(Oyster.Math.IntX,System.UInt32)">
            <summary>
            Compares <see cref="T:Oyster.Math.IntX"/> object with unsigned integer and returns true if their internal state is not equal.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second unsigned integer.</param>
            <returns>True if not equals.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Inequality(System.UInt32,Oyster.Math.IntX)">
            <summary>
            Compares unsigned integer with <see cref="T:Oyster.Math.IntX"/> object and returns true if their internal state is not equal.
            </summary>
            <param name="int1">First unsigned integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>True if not equals.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_GreaterThan(Oyster.Math.IntX,Oyster.Math.IntX)">
            <summary>
            Compares two <see cref="T:Oyster.Math.IntX"/> objects and returns true if first is greater.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>True if first is greater.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_GreaterThan(Oyster.Math.IntX,System.Int32)">
            <summary>
            Compares <see cref="T:Oyster.Math.IntX"/> object with integer and returns true if first is greater.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second integer.</param>
            <returns>True if first is greater.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_GreaterThan(System.Int32,Oyster.Math.IntX)">
            <summary>
            Compares integer with <see cref="T:Oyster.Math.IntX"/> object and returns true if first is greater.
            </summary>
            <param name="int1">First integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>True if first is greater.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_GreaterThan(Oyster.Math.IntX,System.UInt32)">
            <summary>
            Compares <see cref="T:Oyster.Math.IntX"/> object with unsigned integer and returns true if first is greater.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second unsigned integer.</param>
            <returns>True if first is greater.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_GreaterThan(System.UInt32,Oyster.Math.IntX)">
            <summary>
            Compares unsigned integer with <see cref="T:Oyster.Math.IntX"/> object and returns true if first is greater.
            </summary>
            <param name="int1">First unsigned integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>True if first is greater.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_GreaterThanOrEqual(Oyster.Math.IntX,Oyster.Math.IntX)">
            <summary>
            Compares two <see cref="T:Oyster.Math.IntX"/> objects and returns true if first is greater or equal.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>True if first is greater or equal.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_GreaterThanOrEqual(Oyster.Math.IntX,System.Int32)">
            <summary>
            Compares <see cref="T:Oyster.Math.IntX"/> object with integer and returns true if first is greater or equal.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second integer.</param>
            <returns>True if first is greater or equal.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_GreaterThanOrEqual(System.Int32,Oyster.Math.IntX)">
            <summary>
            Compares integer with <see cref="T:Oyster.Math.IntX"/> object and returns true if first is greater or equal.
            </summary>
            <param name="int1">First integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>True if first is greater or equal.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_GreaterThanOrEqual(Oyster.Math.IntX,System.UInt32)">
            <summary>
            Compares <see cref="T:Oyster.Math.IntX"/> object with unsinged integer and returns true if first is greater or equal.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second unsinged integer.</param>
            <returns>True if first is greater or equal.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_GreaterThanOrEqual(System.UInt32,Oyster.Math.IntX)">
            <summary>
            Compares unsinged integer with <see cref="T:Oyster.Math.IntX"/> object and returns true if first is greater or equal.
            </summary>
            <param name="int1">First unsinged integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>True if first is greater or equal.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_LessThan(Oyster.Math.IntX,Oyster.Math.IntX)">
            <summary>
            Compares two <see cref="T:Oyster.Math.IntX"/> objects and returns true if first is lighter.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>True if first is lighter.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_LessThan(Oyster.Math.IntX,System.Int32)">
            <summary>
            Compares <see cref="T:Oyster.Math.IntX"/> object with integer and returns true if first is lighter.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second integer.</param>
            <returns>True if first is lighter.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_LessThan(System.Int32,Oyster.Math.IntX)">
            <summary>
            Compares integer with <see cref="T:Oyster.Math.IntX"/> object and returns true if first is lighter.
            </summary>
            <param name="int1">First integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>True if first is lighter.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_LessThan(Oyster.Math.IntX,System.UInt32)">
            <summary>
            Compares <see cref="T:Oyster.Math.IntX"/> object with unsinged integer and returns true if first is lighter.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second unsinged integer.</param>
            <returns>True if first is lighter.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_LessThan(System.UInt32,Oyster.Math.IntX)">
            <summary>
            Compares unsinged integer with <see cref="T:Oyster.Math.IntX"/> object and returns true if first is lighter.
            </summary>
            <param name="int1">First unsinged integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>True if first is lighter.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_LessThanOrEqual(Oyster.Math.IntX,Oyster.Math.IntX)">
            <summary>
            Compares two <see cref="T:Oyster.Math.IntX"/> objects and returns true if first is lighter or equal.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>True if first is lighter or equal.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_LessThanOrEqual(Oyster.Math.IntX,System.Int32)">
            <summary>
            Compares <see cref="T:Oyster.Math.IntX"/> object with integer and returns true if first is lighter or equal.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second integer.</param>
            <returns>True if first is lighter or equal.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_LessThanOrEqual(System.Int32,Oyster.Math.IntX)">
            <summary>
            Compares integer with <see cref="T:Oyster.Math.IntX"/> object and returns true if first is lighter or equal.
            </summary>
            <param name="int1">First integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>True if first is lighter or equal.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_LessThanOrEqual(Oyster.Math.IntX,System.UInt32)">
            <summary>
            Compares <see cref="T:Oyster.Math.IntX"/> object with unsinged integer and returns true if first is lighter or equal.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second unsinged integer.</param>
            <returns>True if first is lighter or equal.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_LessThanOrEqual(System.UInt32,Oyster.Math.IntX)">
            <summary>
            Compares unsinged integer with <see cref="T:Oyster.Math.IntX"/> object and returns true if first is lighter or equal.
            </summary>
            <param name="int1">First unsinged integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>True if first is lighter or equal.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Addition(Oyster.Math.IntX,Oyster.Math.IntX)">
            <summary>
            Adds one <see cref="T:Oyster.Math.IntX"/> object to another.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>Addition result.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Subtraction(Oyster.Math.IntX,Oyster.Math.IntX)">
            <summary>
            Subtracts one <see cref="T:Oyster.Math.IntX"/> object from another.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>Subtraction result.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Multiply(Oyster.Math.IntX,Oyster.Math.IntX)">
            <summary>
            Multiplies one <see cref="T:Oyster.Math.IntX"/> object on another.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>Multiply result.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Division(Oyster.Math.IntX,Oyster.Math.IntX)">
            <summary>
            Divides one <see cref="T:Oyster.Math.IntX"/> object by another.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>Division result.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Modulus(Oyster.Math.IntX,Oyster.Math.IntX)">
            <summary>
            Divides one <see cref="T:Oyster.Math.IntX"/> object by another and returns division modulo.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <returns>Modulo result.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_LeftShift(Oyster.Math.IntX,System.Int32)">
            <summary>
            Shifts <see cref="T:Oyster.Math.IntX"/> object on selected bits count to the left.
            </summary>
            <param name="intX">Big integer.</param>
            <param name="shift">Bits count.</param>
            <returns>Shifting result.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_RightShift(Oyster.Math.IntX,System.Int32)">
            <summary>
            Shifts <see cref="T:Oyster.Math.IntX"/> object on selected bits count to the right.
            </summary>
            <param name="intX">Big integer.</param>
            <param name="shift">Bits count.</param>
            <returns>Shifting result.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_UnaryPlus(Oyster.Math.IntX)">
            <summary>
            Returns the same <see cref="T:Oyster.Math.IntX"/> value.
            </summary>
            <param name="value">Initial value.</param>
            <returns>The same value, but new object.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is a null reference.</exception>
        </member>
        <member name="M:Oyster.Math.IntX.op_UnaryNegation(Oyster.Math.IntX)">
            <summary>
            Returns the same <see cref="T:Oyster.Math.IntX"/> value, but with other sign.
            </summary>
            <param name="value">Initial value.</param>
            <returns>The same value, but with other sign.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is a null reference.</exception>
        </member>
        <member name="M:Oyster.Math.IntX.op_Increment(Oyster.Math.IntX)">
            <summary>
            Returns increased <see cref="T:Oyster.Math.IntX"/> value.
            </summary>
            <param name="value">Initial value.</param>
            <returns>Increased value.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is a null reference.</exception>
        </member>
        <member name="M:Oyster.Math.IntX.op_Decrement(Oyster.Math.IntX)">
            <summary>
            Returns decreased <see cref="T:Oyster.Math.IntX"/> value.
            </summary>
            <param name="value">Initial value.</param>
            <returns>Decreased value.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is a null reference.</exception>
        </member>
        <member name="M:Oyster.Math.IntX.op_Implicit(System.Int32)~Oyster.Math.IntX">
            <summary>
            Implicitly converts <see cref="T:System.Int32"/> to <see cref="T:Oyster.Math.IntX"/>.
            </summary>
            <param name="value">Value to convert.</param>
            <returns>Conversion result.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Implicit(System.UInt32)~Oyster.Math.IntX">
            <summary>
            Implicitly converts <see cref="T:System.UInt32"/> to <see cref="T:Oyster.Math.IntX"/>.
            </summary>
            <param name="value">Value to convert.</param>
            <returns>Conversion result.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Implicit(System.UInt16)~Oyster.Math.IntX">
            <summary>
            Implicitly converts <see cref="T:System.UInt16"/> to <see cref="T:Oyster.Math.IntX"/>.
            </summary>
            <param name="value">Value to convert.</param>
            <returns>Conversion result.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Implicit(System.Int64)~Oyster.Math.IntX">
            <summary>
            Implicitly converts <see cref="T:System.Int64"/> to <see cref="T:Oyster.Math.IntX"/>.
            </summary>
            <param name="value">Value to convert.</param>
            <returns>Conversion result.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Implicit(System.UInt64)~Oyster.Math.IntX">
            <summary>
            Implicitly converts <see cref="T:System.UInt64"/> to <see cref="T:Oyster.Math.IntX"/>.
            </summary>
            <param name="value">Value to convert.</param>
            <returns>Conversion result.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Explicit(Oyster.Math.IntX)~System.Int32">
            <summary>
            Explicitly converts <see cref="T:Oyster.Math.IntX"/> to <see cref="T:System.Int32"/>.
            </summary>
            <param name="value">Value to convert.</param>
            <returns>Conversion result.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Explicit(Oyster.Math.IntX)~System.UInt32">
            <summary>
            Explicitly converts <see cref="T:Oyster.Math.IntX"/> to <see cref="T:System.UInt32"/>.
            </summary>
            <param name="value">Value to convert.</param>
            <returns>Conversion result.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Explicit(Oyster.Math.IntX)~System.Int64">
            <summary>
            Explicitly converts <see cref="T:Oyster.Math.IntX"/> to <see cref="T:System.Int64"/>.
            </summary>
            <param name="value">Value to convert.</param>
            <returns>Conversion result.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Explicit(Oyster.Math.IntX)~System.UInt64">
            <summary>
            Explicitly converts <see cref="T:Oyster.Math.IntX"/> to <see cref="T:System.UInt64"/>.
            </summary>
            <param name="value">Value to convert.</param>
            <returns>Conversion result.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.op_Explicit(Oyster.Math.IntX)~System.UInt16">
            <summary>
            Explicitly converts <see cref="T:Oyster.Math.IntX"/> to <see cref="T:System.UInt16"/>.
            </summary>
            <param name="value">Value to convert.</param>
            <returns>Conversion result.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.Multiply(Oyster.Math.IntX,Oyster.Math.IntX,Oyster.Math.MultiplyMode)">
            <summary>
            Multiplies one <see cref="T:Oyster.Math.IntX"/> object on another.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <param name="mode">Multiply mode set explicitly.</param>
            <returns>Multiply result.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.Divide(Oyster.Math.IntX,Oyster.Math.IntX,Oyster.Math.DivideMode)">
            <summary>
            Divides one <see cref="T:Oyster.Math.IntX"/> object by another.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <param name="mode">Divide mode.</param>
            <returns>Division result.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.Modulo(Oyster.Math.IntX,Oyster.Math.IntX,Oyster.Math.DivideMode)">
            <summary>
            Divides one <see cref="T:Oyster.Math.IntX"/> object by another and returns division modulo.
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <param name="mode">Divide mode.</param>
            <returns>Modulo result.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.DivideModulo(Oyster.Math.IntX,Oyster.Math.IntX,Oyster.Math.IntX@)">
            <summary>
            Divides one <see cref="T:Oyster.Math.IntX"/> object on another.
            Returns both divident and remainder
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <param name="modRes">Remainder big integer.</param>
            <returns>Division result.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.DivideModulo(Oyster.Math.IntX,Oyster.Math.IntX,Oyster.Math.IntX@,Oyster.Math.DivideMode)">
            <summary>
            Divides one <see cref="T:Oyster.Math.IntX"/> object on another.
            Returns both divident and remainder
            </summary>
            <param name="int1">First big integer.</param>
            <param name="int2">Second big integer.</param>
            <param name="modRes">Remainder big integer.</param>
            <param name="mode">Divide mode.</param>
            <returns>Division result.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.Pow(Oyster.Math.IntX,System.UInt32)">
            <summary>
            Returns a specified big integer raised to the specified power.
            </summary>
            <param name="value">Number to raise.</param>
            <param name="power">Power.</param>
            <returns>Number in given power.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.Pow(Oyster.Math.IntX,System.UInt32,Oyster.Math.MultiplyMode)">
            <summary>
            Returns a specified big integer raised to the specified power.
            </summary>
            <param name="value">Number to raise.</param>
            <param name="power">Power.</param>
            <param name="multiplyMode">Multiply mode set explicitly.</param>
            <returns>Number in given power.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.ToString">
            <summary>
            Returns decimal string representation of this <see cref="T:Oyster.Math.IntX"/> object.
            </summary>
            <returns>Decimal number in string.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.ToString(System.UInt32)">
            <summary>
            Returns string representation of this <see cref="T:Oyster.Math.IntX"/> object in given base.
            </summary>
            <param name="numberBase">Base of system in which to do output.</param>
            <returns>Object string representation.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.ToString(System.UInt32,System.Boolean)">
            <summary>
            Returns string representation of this <see cref="T:Oyster.Math.IntX"/> object in given base.
            </summary>
            <param name="numberBase">Base of system in which to do output.</param>
            <param name="upperCase">Use uppercase for bases from 11 to 16 (which use letters A-F).</param>
            <returns>Object string representation.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.ToString(System.UInt32,System.String)">
            <summary>
            Returns string representation of this <see cref="T:Oyster.Math.IntX"/> object in given base using custom alphabet.
            </summary>
            <param name="numberBase">Base of system in which to do output.</param>
            <param name="alphabet">Alphabet which contains chars used to represent big integer, char position is coresponding digit value.</param>
            <returns>Object string representation.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.Parse(System.String)">
            <summary>
            Parses provided string representation of <see cref="T:Oyster.Math.IntX"/> object in decimal base.
            If number starts from "0" then it's treated as octal; if number starts fropm "0x"
            then it's treated as hexadecimal.
            </summary>
            <param name="value">Number as string.</param>
            <returns>Parsed object.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.Parse(System.String,System.UInt32)">
            <summary>
            Parses provided string representation of <see cref="T:Oyster.Math.IntX"/> object.
            </summary>
            <param name="value">Number as string.</param>
            <param name="numberBase">Number base.</param>
            <returns>Parsed object.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.Parse(System.String,System.UInt32,System.String)">
            <summary>
            Parses provided string representation of <see cref="T:Oyster.Math.IntX"/> object using custom alphabet.
            </summary>
            <param name="value">Number as string.</param>
            <param name="numberBase">Number base.</param>
            <param name="alphabet">Alphabet which contains chars used to represent big integer, char position is coresponding digit value.</param>
            <returns>Parsed object.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.Parse(System.String,Oyster.Math.ParseMode)">
            <summary>
            Parses provided string representation of <see cref="T:Oyster.Math.IntX"/> object in decimal base.
            If number starts from "0" then it's treated as octal; if number starts fropm "0x"
            then it's treated as hexadecimal.
            </summary>
            <param name="value">Number as string.</param>
            <param name="mode">Parse mode.</param>
            <returns>Parsed object.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.Parse(System.String,System.UInt32,Oyster.Math.ParseMode)">
            <summary>
            Parses provided string representation of <see cref="T:Oyster.Math.IntX"/> object.
            </summary>
            <param name="value">Number as string.</param>
            <param name="numberBase">Number base.</param>
            <param name="mode">Parse mode.</param>
            <returns>Parsed object.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.Parse(System.String,System.UInt32,System.String,Oyster.Math.ParseMode)">
            <summary>
            Parses provided string representation of <see cref="T:Oyster.Math.IntX"/> object using custom alphabet.
            </summary>
            <param name="value">Number as string.</param>
            <param name="numberBase">Number base.</param>
            <param name="alphabet">Alphabet which contains chars used to represent big integer, char position is coresponding digit value.</param>
            <param name="mode">Parse mode.</param>
            <returns>Parsed object.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.Equals(Oyster.Math.IntX)">
            <summary>
            Returns equality of this <see cref="T:Oyster.Math.IntX"/> with another big integer.
            </summary>
            <param name="n">Big integer to compare with.</param>
            <returns>True if equals.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.Equals(System.Int32)">
            <summary>
            Returns equality of this <see cref="T:Oyster.Math.IntX"/> with another integer.
            </summary>
            <param name="n">Integer to compare with.</param>
            <returns>True if equals.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.Equals(System.UInt32)">
            <summary>
            Returns equality of this <see cref="T:Oyster.Math.IntX"/> with another unsigned integer.
            </summary>
            <param name="n">Unsigned integer to compare with.</param>
            <returns>True if equals.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.Equals(System.Int64)">
            <summary>
            Returns equality of this <see cref="T:Oyster.Math.IntX"/> with another long integer.
            </summary>
            <param name="n">Long integer to compare with.</param>
            <returns>True if equals.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.Equals(System.UInt64)">
            <summary>
            Returns equality of this <see cref="T:Oyster.Math.IntX"/> with another unsigned long integer.
            </summary>
            <param name="n">Unsigned long integer to compare with.</param>
            <returns>True if equals.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.Equals(System.Object)">
            <summary>
            Returns equality of this <see cref="T:Oyster.Math.IntX"/> with another object.
            </summary>
            <param name="obj">Object to compare with.</param>
            <returns>True if equals.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.GetHashCode">
            <summary>
            Returns hash code for this <see cref="T:Oyster.Math.IntX"/> object.
            </summary>
            <returns>Object hash code.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.CompareTo(Oyster.Math.IntX)">
            <summary>
            Compares current object with another big integer.
            </summary>
            <param name="n">Big integer to compare with.</param>
            <returns>1 if object is bigger than <paramref name="n" />, -1 if object is smaller than <paramref name="n" />, 0 if they are equal.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.CompareTo(System.Int32)">
            <summary>
            Compares current object with another integer.
            </summary>
            <param name="n">Integer to compare with.</param>
            <returns>1 if object is bigger than <paramref name="n" />, -1 if object is smaller than <paramref name="n" />, 0 if they are equal.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.CompareTo(System.UInt32)">
            <summary>
            Compares current object with another unsigned integer.
            </summary>
            <param name="n">Unsigned integer to compare with.</param>
            <returns>1 if object is bigger than <paramref name="n" />, -1 if object is smaller than <paramref name="n" />, 0 if they are equal.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.CompareTo(System.Int64)">
            <summary>
            Compares current object with another long integer.
            </summary>
            <param name="n">Long integer to compare with.</param>
            <returns>1 if object is bigger than <paramref name="n" />, -1 if object is smaller than <paramref name="n" />, 0 if they are equal.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.CompareTo(System.UInt64)">
            <summary>
            Compares current object with another unsigned long integer.
            </summary>
            <param name="n">Unsigned long integer to compare with.</param>
            <returns>1 if object is bigger than <paramref name="n" />, -1 if object is smaller than <paramref name="n" />, 0 if they are equal.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.CompareTo(System.Object)">
            <summary>
            Compares current object with another object.
            </summary>
            <param name="obj">Object to compare with.</param>
            <returns>1 if object is bigger than <paramref name="obj" />, -1 if object is smaller than <paramref name="obj" />, 0 if they are equal.</returns>
        </member>
        <member name="M:Oyster.Math.IntX.Normalize">
            <summary>
            Frees extra space not used by digits.
            </summary>
        </member>
        <member name="M:Oyster.Math.IntX.GetInternalState(System.UInt32[]@,System.Boolean@)">
            <summary>
            Retrieves this <see cref="T:Oyster.Math.IntX"/> internal state as digits array and sign.
            Can be used for serialization and other purposes.
            Note: please use constructor instead to clone <see cref="T:Oyster.Math.IntX"/> object.
            </summary>
            <param name="digits">Digits array.</param>
            <param name="negative">Is negative integer.</param>
        </member>
        <member name="M:Oyster.Math.IntX.InitFromZero">
            <summary>
            Initializes class instance from zero.
            For internal use.
            </summary>
        </member>
        <member name="M:Oyster.Math.IntX.InitFromUlong(System.UInt64)">
            <summary>
            Initializes class instance from <see cref="T:System.UInt64"/> value.
            Doesn't initialize sign.
            For internal use.
            </summary>
            <param name="value">Unsigned long value.</param>
        </member>
        <member name="M:Oyster.Math.IntX.InitFromIntX(Oyster.Math.IntX)">
            <summary>
            Initializes class instance from another <see cref="T:Oyster.Math.IntX"/> value.
            For internal use.
            </summary>
            <param name="value">Big integer value.</param>
        </member>
        <member name="M:Oyster.Math.IntX.InitFromDigits(System.UInt32[],System.Boolean,System.UInt32)">
            <summary>
            Initializes class instance from digits array.
            For internal use.
            </summary>
            <param name="digits">Big integer digits.</param>
            <param name="negative">Big integer sign.</param>
            <param name="length">Big integer length.</param>
        </member>
        <member name="M:Oyster.Math.IntX.TryNormalize">
            <summary>
            Frees extra space not used by digits only if auto-normalize is set for the instance.
            </summary>
        </member>
        <member name="P:Oyster.Math.IntX.GlobalSettings">
            <summary>
            <see cref="T:Oyster.Math.IntX"/> global settings.
            </summary>
        </member>
        <member name="P:Oyster.Math.IntX.Settings">
            <summary>
            <see cref="T:Oyster.Math.IntX"/> instance settings.
            </summary>
        </member>
    </members>
</doc>
